
<%
	/*
	功能：设置商品有关信息（入口页）
	 *详细：该页面是接口入口页面，生成支付时的URL
	 *版本：3.1
	 *日期：2010-08-27
	 *说明：
	 *以下代码只是为了方便商户测试而提供的样例代码，商户可以根据自己网站的需要，按照技术文档编写,并非一定要使用该代码。
	 *该代码仅供学习和研究支付宝接口使用，只是提供一个参考。
	
	 *************************注意*****************
	该页面测试时出现“调试错误”请参考：http://club.alipay.com/read-htm-tid-8681712.html
	要传递的参数要么不允许为空，要么就不要出现在数组与隐藏控件或URL链接里。
	 **********************************************
	 */
%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<%@ page import="com.alipay.config.*"%>
<%@ page import="com.alipay.util.*"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
		<title>支付宝即时到帐付款</title>
		<style type="text/css">
.font_content{
	font-family:"宋体";
	font-size:14px;
	color:#FF6600;
}
.font_title{
	font-family:"宋体";
	font-size:16px;
	color:#FF0000;
	font-weight:bold;
}
table{
	border: 1px solid #CCCCCC;
}
		</style>
	</head>
	<%
		//request.setCharacterEncoding("UTF-8");
		//AlipyConfig.java中配置信息（不可以修改）
		String input_charset = AlipayConfig.CharSet;
		String sign_type = AlipayConfig.sign_type;
		String seller_email = AlipayConfig.sellerEmail;
		String partner = AlipayConfig.partnerID;
		String key = AlipayConfig.key;

		String show_url = AlipayConfig.show_url;
		String notify_url = AlipayConfig.notify_url;
		String return_url = AlipayConfig.return_url;
		
		String antiphishing = AlipayConfig.antiphishing;
		
		///////////////////////////////////////////////////////////////////////////////////
		
		//以下参数是需要通过下单时的订单数据传入进来获得
		//必填参数
		UtilDate date = new UtilDate();//调取支付宝工具类生成订单号
        String out_trade_no = date.getOrderNum();//请与贵网站订单系统中的唯一订单号匹配
        //订单名称，显示在支付宝收银台里的“商品名称”里，显示在支付宝的交易管理的“商品名称”的列表里。
        String subject = new String(request.getParameter("aliorder").getBytes("ISO-8859-1"),"utf-8");
        //订单描述、订单详细、订单备注，显示在支付宝收银台里的“商品描述”里
        String body = new String(request.getParameter("alibody").getBytes("ISO-8859-1"),"utf-8");
        //订单总金额，显示在支付宝收银台里的“应付总额”里
        String total_fee = request.getParameter("alimoney");
        
        //扩展功能参数——网银提前
        String pay_mode = request.getParameter("pay_bank");
        String paymethod = "";		//默认支付方式，四个值可选：bankPay(网银); cartoon(卡通); directPay(余额); CASH(网点支付)
        String defaultbank = "";	//默认网银代号，代号列表见http://club.alipay.com/read.php?tid=8681379
        if(pay_mode.equals("directPay")){
        	paymethod = "directPay";
        }
        else{
        	paymethod = "bankPay";
        	defaultbank = pay_mode;
        }
        
        //扩展功能参数——防钓鱼
        String encrypt_key  = "";					//防钓鱼时间戳，初始值
        String exter_invoke_ip= "";					//客户端的IP地址，初始值
        if(antiphishing.equals("1")){
        	encrypt_key = AlipayBase.query_timestamp(partner);
        	exter_invoke_ip = "";					//获取客户端的IP地址，建议：编写获取客户端IP地址的程序
        }
        
        //扩展功能参数——其他
        String extra_common_param = "";				//自定义参数，可存放任何内容（除=、&等特殊字符外），不会显示在页面上
        String buyer_email = "";					//默认买家支付宝账号
        
        //扩展功能参数——分润(若要使用，请按照注释要求的格式赋值)
        String royalty_type = "";					//提成类型，该值为固定值：10，不需要修改
        String royalty_parameters ="";
		//提成信息集，与需要结合商户网站自身情况动态获取每笔交易的各分润收款账号、各分润金额、各分润说明。最多只能设置10条
		//提成信息集格式为：收款方Email_1^金额1^备注1|收款方Email_2^金额2^备注2
		//如：
		//royalty_type = "10"
		//royalty_parameters	= "111@126.com^0.01^分润备注一|222@126.com^0.01^分润备注二"
		
		//扩展功能参数——自定义超时(若要使用，请按照注释要求的格式赋值)
		//该功能默认不开通，需联系客户经理咨询
		//超时时间，不填默认是15天。八个值可选：1h(1小时),2h(2小时),3h(3小时),1d(1天),3d(3天),7d(7天),15d(15天),1c(当天)
		String it_b_pay = "";

        /////////////////////////////////////////////////////////////////////////////////////////////////////

		//GET方式传递
		String strUrl = AlipayService.CreateUrl(partner,seller_email,return_url,notify_url,show_url,out_trade_no,
		subject,body,total_fee,paymethod,defaultbank,encrypt_key,exter_invoke_ip,extra_common_param,buyer_email,
		royalty_type,royalty_parameters,it_b_pay,input_charset,key,sign_type);
		String sHtmlText = "<a href=" + strUrl + " target='_blank'><img border='0' src='img/alipay.gif' /></a>";
		out.println("<script>window.location='"+strUrl+"';</script>");
		
		//POST方式传递，得到加密结果字符串。想POST方式传递，请把下面四行代码取消注释。
        //String sHtmlText = AlipayService.BuildPostform(partner,seller_email,return_url,notify_url,show_url,out_trade_no,
		//subject,body,total_fee,paymethod,defaultbank,encrypt_key,exter_invoke_ip,extra_common_param,buyer_email,
		//royalty_type,royalty_parameters,it_b_pay,input_charset,key,sign_type);
	%>

	<body>
        <table align="center" width="350" cellpadding="5" cellspacing="0">
            <tr>
                <td align="center" class="font_title" colspan="2">订单确认</td>
            </tr>
            <tr>
                <td class="font_content" align="right">订单号：</td>
                <td class="font_content" align="left"><%=out_trade_no%></td>
            </tr>
            <tr>
                <td class="font_content" align="right">付款总金额：</td>
                <td class="font_content" align="left"><%=total_fee%></td>
            </tr>
            <tr>
                <td align="center" colspan="2"><%=sHtmlText%></td>
            </tr>
        </table>
	</body>
</html>
